0、环境

本文操作系统: CentOS 7.2.1511 x86_64 MySQL 版本: 5.7.13

1、下载 MySQL 官方的 Yum Repository

http://blog.static.laily.net/download-mysql-repo.png

从 MySQL 官网选取合适的 MySQL 版本,获取下载地址。

然后使用 wget 下载:

[root@centos-linux src]# wget http://repo.mysql.com//mysql57-community-release-el7-8.noarch.rpm
--2016-07-15 13:26:51--  http://repo.mysql.com//mysql57-community-release-el7-8.noarch.rpm
正在解析主机 repo.mysql.com (repo.mysql.com)... 23.63.61.108
正在连接 repo.mysql.com (repo.mysql.com)|23.63.61.108|:80... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:9116 (8.9K) [application/x-redhat-package-manager]
正在保存至: “mysql57-community-release-el7-8.noarch.rpm”

100%[========================================================================================>] 9,116       --.-K/s 用时 0s

2016-07-15 13:26:57 (193 MB/s) - 已保存 “mysql57-community-release-el7-8.noarch.rpm” [9116/9116])

2、安装 yum Repository

[root@centos-linux src]# yum -y install mysql57-community-release-el7-8.noarch.rpm
已加载插件:fastestmirror
正在检查 mysql57-community-release-el7-8.noarch.rpm: mysql57-community-release-el7-8.noarch
mysql57-community-release-el7-8.noarch.rpm 将被安装
正在解决依赖关系
--> 正在检查事务
---> 软件包 mysql57-community-release.noarch.0.el7-8 将被 安装
--> 解决依赖关系完成

依赖关系解决

==================================================================================================================================
 Package                              架构              版本             源                                                  大小
==================================================================================================================================
正在安装:
 mysql57-community-release            noarch            el7-8            /mysql57-community-release-el7-8.noarch            8.2 k

事务概要
==================================================================================================================================
安装  1 软件包

总计:8.2 k
安装大小:8.2 k
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  正在安装    : mysql57-community-release-el7-8.noarch                                                                        1/1
  验证中      : mysql57-community-release-el7-8.noarch                                                                        1/1

已安装:
  mysql57-community-release.noarch 0:el7-8

完毕!

3、安装 MySQL 服务端

查看 mysql server

[root@centos-linux src]# yum search mysql-com
已加载插件:fastestmirror
base                                                                                                       | 3.6 kB  00:00:00
extras                                                                                                     | 3.4 kB  00:00:00
mysql-connectors-community                                                                                 | 2.5 kB  00:00:00
mysql-tools-community                                                                                      | 2.5 kB  00:00:00
mysql57-community                                                                                          | 2.5 kB  00:00:00
updates                                                                                                    | 3.4 kB  00:00:00
(1/3): mysql-connectors-community/x86_64/primary_db                                                        | 9.8 kB  00:00:00
(2/3): mysql-tools-community/x86_64/primary_db                                                             |  26 kB  00:00:00
(3/3): mysql57-community/x86_64/primary_db                                                                 |  57 kB  00:00:00
Loading mirror speeds from cached hostfile
===================================================== N/S matched: mysql-com =====================================================
mysql-community-client.i686 : MySQL database client applications and tools
mysql-community-client.x86_64 : MySQL database client applications and tools
mysql-community-common.i686 : MySQL database common files for server and client libs
mysql-community-common.x86_64 : MySQL database common files for server and client libs
mysql-community-devel.i686 : Development header files and libraries for MySQL database client applications
mysql-community-devel.x86_64 : Development header files and libraries for MySQL database client applications
mysql-community-embedded.i686 : MySQL embedded library
mysql-community-embedded.x86_64 : MySQL embedded library
mysql-community-embedded-compat.i686 : MySQL embedded compat library
mysql-community-embedded-compat.x86_64 : MySQL embedded compat library
mysql-community-embedded-devel.i686 : Development header files and libraries for MySQL as an embeddable library
mysql-community-embedded-devel.x86_64 : Development header files and libraries for MySQL as an embeddable library
mysql-community-libs.i686 : Shared libraries for MySQL database client applications
mysql-community-libs.x86_64 : Shared libraries for MySQL database client applications
mysql-community-libs-compat.i686 : Shared compat libraries for MySQL 5.6.25 database client applications
mysql-community-libs-compat.x86_64 : Shared compat libraries for MySQL 5.6.25 database client applications
mysql-community-release.noarch : MySQL repository configuration for yum
mysql-community-server.x86_64 : A very fast and reliable SQL database server
mysql-community-test.x86_64 : Test suite for the MySQL database server

  名称和简介匹配 only,使用“search all”试试。
安装

[root@centos-linux src]# yum -y install mysql-community-server.x86_64

等待执行安装完成。

4、启动 mysql 服务

然后启动,注意 CentOS7 的启动方式和以前不一样,CentOS7 使用了 systemctl

[root@centos-linux ~]# systemctl start mysqld.service

查看启动是否成功

[root@centos-linux ~]# systemctl status mysqld.service
● mysqld.service - MySQL Server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
   Active: active (running) since 六 2016-07-16 11:07:56 HKT; 2min 42s ago
  Process: 22051 ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid $MYSQLD_OPTS (code=exited, status=0/SUCCESS)
  Process: 21973 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
 Main PID: 22054 (mysqld)
   CGroup: /system.slice/mysqld.service
           └─22054 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid

7月 16 11:07:50 centos-linux.shared systemd[1]: Starting MySQL Server...
7月 16 11:07:56 centos-linux.shared systemd[1]: Started MySQL Server.

上面显示 active (running) 则表示已经正常启动。

5、登陆数据库

然后就可以进入数据库了,这里注意一点,MySQL5.7.6 之后会在启动 mysql 进程的时候生成一个用户密码,首次登陆需要这个密码才行。密码保存在 mysql 进程的日志里,即(/var/log/mysqld.log)

查看登陆密码

[root@centos-linux ~]# cat /var/log/mysqld.log | grep 'password'
2016-07-16T03:07:53.587995Z 1 [Note] A temporary password is generated for root@localhost: 2=s6NZk.t:fz

然后登陆

[root@centos-linux ~]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.13

Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

到这里 MySQL 就完全安装完成了。

6、修改 root 密码

但是如果想正常使用还需要修改密码

mysql> show databases;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

以前的 password()函数将会被抛弃,官方建议使用下面的命令来修改密码

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';

同时,如果你设置的密码过于简单也会报错。

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

具体关于设置密码的规则,可以看这一篇文章。

这里我们注意设置密码 长度要大于8,同时要有数字,大小写,特殊字符。

最后,安装完了可以删除 MySQL 的 Repository ,这样可以减少 yum 检查更新的时间,使用下面的命令。

[root@typecodes ~]# yum -y remove mysql57-community-release-el7-8.noarch

7 .添加远程登录用户

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root(用户名)'@'%' IDENTIFIED BY 'root(密码)' WITH GRANT OPTION;
mysql> flush privileges; // 使其生效
mysql> use mysql;
mysql> select host, name from user; // 查看是否添加成功